~今天要分享的是「主成分分析」~
主成分分析(Principal Component Analysis,簡稱PCA)是一個用於特徵工程步驟的技術,目的是透過找到新的主成分特徵讓原本特徵的維度縮減,簡單來說就是保留最重要的幾個特徵(主要變異性),而把其他類似性質的特徵合併以及把不重要的特徵剃除。
要找到新的主成分特徵,首先要將原始特徵做線性轉換,再來將這些特徵投射到一個新的特徵空間中,接著計算每個特徵的方差(Variance),如果方差越大,代表數據越分散於平均值,所以第一個主成分特徵有著最大的方差。
程式碼介紹:
第一步、數據標準化
使用PCA方法前,一定要先確定所有特徵都具有相同的單位,也就是說數據要經過標準化處理,數據標準化的方法在第四篇有介紹到,大家可以看看文章歐~
第二步、建立PCA模型
from sklearn.decomposition import PCA
pca = PCA(n_components=n) # n是主成分特徵數量
pca.fit(X) # X是數據集
X_pca = pca.transform(X)
其中第三行及第四行可以合併寫成pca.fit_transform(X)
我們可以根據程式執行結果分析欲保留的特徵數量,像如果五個特徵中,經過PCA技術後,僅有前兩個特徵的方差是最大的,而且占了全部特徵的95%以上,那就可以思考是不是保留此兩個特徵值就好,其餘的做剃除,當然每個題目的需求都不一樣,所以要保留多少個就視情況而定。